As an increasing number of applications and services are being made available over networks such as the Internet, an increasing number of content, application, and service providers are turning to technologies such as remote resource sharing and cloud computing. Cloud computing, in general, is an approach to providing access to electronic resources through services, such as Web services, where the hardware and/or software used to support those services is dynamically scalable to meet the needs of the services at any given time. A user or customer typically will rent, lease, or otherwise pay for access to resources through the cloud, and thus does not have to purchase and maintain the hardware and/or software to provide access to these resources. In some systems users are able to remotely access private workspaces, or virtual desktops, that are provided using these resources. While the data for these workspaces can be encrypted, the data is often transmitted over a public network. An entity obtaining unauthorized access to the encryption key can then potentially gain access to the data.